*::after,
*::before {
  box-sizing: border-box;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  overflow-x: hidden;
  min-height: 100vh;
  background: #2f364f;
  display: flex;
  justify-content: center;
  align-items: center;
}
.box {
    width: 640px;
    height: 360px;
    transform: rotate(-25deg) skew(25deg);
    transition: .5s;
    display: flex;
    border-left: 5px solid #FFF;
    border-left: 5px;
}
.box:hover {
    transform: rotate(-25deg) skew(-25deg) translateY(-20px);
}
.box span {
    width: 25%;
    height: 100%;
    background: none;
    display: block;
    transition: .5s;
    pointer-events: none;
    background: url(./bg.jpg);
    background-size: cover;
    background-position: calc(-160px * var(--i));
    border-top: 5px solid #FFF;
    border-bottom: 5px solid #FFF;
}
.box:hover span:nth-child(odd) {
    transform: skewY(25deg);
    box-shadow: inset 20px 0 50px rgba(0,0,0,.5);
}
.box:hover span:nth-child(even) {
    transform: skewY(-25deg);
    box-shadow: inset 20px 0 50px rgba(0,0,0,.5);
}
.box span:first-child {
    border-left: 5px solid #FFF;
}
.box span:last-child {
    border-right: 5px solid #FFF;
}